package com.project.service;

import com.github.pagehelper.PageInfo;
import com.project.bean.SellBean;
import com.project.bean.SellProductBean;

import java.time.LocalDate;
import java.util.List;


public interface ISellService {

    /**
     * 先验证要出库的商品库存是否足够
     * 如果足够
     * 添加销售订单
     * 同时添加销售商品明细
     * 同时较少商品库存 增加销售量 返回null
     * 否者返回库存不够商品id数组
     * @param sell 销售订单对象
     * @param infoList 明细集合
     * @return 库存不够商品id数组
     */
    public int[] addSell(SellBean sell, List<SellProductBean> infoList);

    /**
     * 按照选项分页查询
     * 同时查询客户名和销售员
     * @param page 页码
     * @param pageSize 每页大小
     * @param client 客户名称
     * @param startDate 起始时间
     * @param endDate 结束时间
     * @return 分页对象
     */
    public PageInfo<SellBean> findByItem(int page, int pageSize, String client , LocalDate startDate ,LocalDate endDate);

    /**
     * 按照id查找销售订单
     * 同时查询销售商品明细
     * @param id 销售id
     * @return 销售对象
     */
    public SellBean findById(int id);


}
